home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ADA Programming Guide
/
ADA Programming Guide.iso
/
adatutor
/
csparts
/
cspartd.src
< prev
next >
Wrap
Text File
|
1996-01-30
|
36KB
|
1,541 lines
--::::::::::
--acronyms.ptf
--::::::::::
.comment
.! This include file contains a table of acronyms which is used
.! in many of the DoD-STD-2167A documents.
.comment
.sp 2
.ce
.ul
Acronyms
.sp 1
.nf
.na
.ul
Acronym Meaning
CSC Computer Software Component
CSCI Computer Software Configuration Item
CSU Computer Software Unit
DID Data Item Description
DOD Department of Defense
HOL High Order Language
I/O Input/Output
IV&V Independent Verification and Validation
MIL-HDBK-1804 Military Handbook, Ada Style Guide
PTF Portable Text Formatter
PTFIDX Portable Text Formatter Indexer
SRC File type of a PAGER2 source file
SUM Software User's Manual
VDD Version Description Document
.fi
.comment
.! The user may wish to add the following .ap command
.! if auto-paragraphing is desired at this point in the document.
.comment
.! .ap
--::::::::::
--header.ptf
--::::::::::
.comment
.! Enter the name of the system below
.comment
.vs SYSNAME CS PARTS
.comment
.! This is set for PICA type (10 chars/inch). Change accordingly
.! for ELITE or other type styles. Also, the default top and bottom
.! margins and headers are used, giving 1 inch top and bottom for
.! both margins and headers at 6 lines/inch. No auto-paragraphing.
.comment
.lm 11
.! This is set for ELITE, not PICA -- .rm 70
.rm 92
.comment
.! Useful Macros (note that macros are in upper-case):
.!
.! .SECT <indentation level> <number> <text>
.! -- define a section which appears in the document and the
.! -- table of contents
.!
.! .LIST <number of spaces to indent>
.! -- start a list of items; the list will be indented from the
.! -- right and left by the indicated number of spaces;
.! -- nothing is output by this macro -- only the indentation
.! -- is changed and the number of the next list element
.! -- is set
.!
.! .LE <text>
.! -- enter a new list item into the list; this may be
.! -- followed by more lines containing text associated
.! -- with the list entry; a blank line is generated followed
.! -- by a list element number, a period, and <text> extended
.! -- to the left by the <number of spaces to indent> set by
.! -- the .LIST macro
.!
.! .ELIST
.! -- end a list of items; the indentation set by .LIST is
.! -- unset; a break is issued
.!
.! .SLIST <number of spaces to indent>
.! -- start a sublist of items while in a list; the sublist will
.! -- be further indented from the right and left by the
.! -- indicated number of spaces
.!
.! .SLE <text>
.! -- enter a new list item into the sublist; this may be
.! -- followed by more lines containing text associated
.! -- with the sublist entry; a blank line is generated
.! -- followed by N.M (N=list element number, M=sublist number),
.! -- a period, and <text> extended to the left by the
.! -- <number of spaces to indent> set by the .SLIST macro
.!
.! .ESLIST
.! -- end a sublist of items and continue with the list
.!
.! .PP
.! -- skip a line and start a new paragraph, indented by 5
.! -- spaces
.!
.! .FIG <indentation level> <text>
.! -- enter a figure into the "List of Figures"
.!
.! .PRFIG
.! -- print the "List of Figures"
.!
.! .TAB <indentation level> <text>
.! -- enter a table into the "List of Tables"
.!
.! .PRTAB
.! -- print the "List of Tables"
.!
.comment
.! ------------------------------------------------
.define SECT
.sp 2
.need 10
@2
.ul
@3 @4 @5 @6 @7 @8 @9
.br
.contline @1 @2 @3 @4 @5 @6 @7 @8 @9
.en
.! ------------------------------------------------
.define LIST
.vs LISTINDENT @1
.li +@LISTINDENT
.ri +@LISTINDENT
.nr a 0
.en
.! ------------------------------------------------
.define LE
.sp
.ti -@LISTINDENT
.nr a +1
@na.
@1 @2 @3 @4 @5 @6 @7 @8 @9
.br
.en
.! ------------------------------------------------
.define ELIST
.br
.li -@LISTINDENT
.ri -@LISTINDENT
.en
.! ------------------------------------------------
.define SLIST
.vs SLISTINDENT @1
.li +@SLISTINDENT
.ri +@SLISTINDENT
.nr b 0
.en
.! ------------------------------------------------
.define SLE
.sp
.ti -@SLISTINDENT
.nr b +1
@na.@nb.
@1 @2 @3 @4 @5 @6 @7 @8 @9
.br
.en
.! ------------------------------------------------
.define ESLIST
.br
.li -@SLISTINDENT
.ri -@SLISTINDENT
.en
.! ------------------------------------------------
.define PP
.sp
.ti +5
.en
.! ------------------------------------------------
.define FIG
.ul
.ce
Figure @2 @3 @4 @5 @6 @7 @8 @9
.br
.contsel 1
.cl @1 @2 @3 @4 @5 @6 @7 @8 @9
.contsel
.en
.! ------------------------------------------------
.define PRFIG
.contsel 1
.bp
.ce
.ul
List of Figures
.sp 2
.pc
.contsel
.en
.! ------------------------------------------------
.define TAB
.ul
.ce
Table @2 @3 @4 @5 @6 @7 @8 @9
.br
.contsel 2
.cl @1 @2 @3 @4 @5 @6 @7 @8 @9
.contsel
.en
.! ------------------------------------------------
.define PRTAB
.contsel 2
.bp
.ce
.ul
List of Tables
.sp 2
.pc
.contsel
.en
.! Other macros specifically for this set of documents
.! TAX1 - Level 1 Taxonomy Entry
.! TAX1A - Level 1 Taxonomy Entry with TOC Entry
.! TAX2 - Level 2 Taxonomy Entry
.! TAX3 - Level 3 Taxonomy Entry
.! ID - File Identification
.! AUTHOR - Author Name
.! DEPEND - Dependencies
.! SPEC - Component Specification
.! SPEC2 - Component Spec with SHARP as Flag Char
.de TAX1
.spaceto +15
Taxonomy:
@1 @2 @3 @4 @5 @6 @7 @8 @9
.br
.contline
.contline 2 @1 @2 @3 @4 @5 @6 @7 @8 @9
.en
.!
.de TAX1A
.spaceto +15
Taxonomy:
@1 @2 @3 @4 @5 @6 @7 @8 @9
.br
.en
.!
.de TAX2
.ti +16
@1 @2 @3 @4 @5 @6 @7 @8 @9
.br
.contline 3 @1 @2 @3 @4 @5 @6 @7 @8 @9
.en
.!
.de TAX3
.ti +20
@1 @2 @3 @4 @5 @6 @7 @8 @9
.br
.contline 4 @1 @2 @3 @4 @5 @6 @7 @8 @9
.en
.!
.de ID
.sp
.need 20
Files:
@1.SPC and @1.BDY
.br
.index @1
.of /Part ID: @1//#/
.ef /#//Part ID: @1/
.en
.!
.de AUTHOR
.index @1 @2 @3 @4 @5 @6 @7 @8 @9
.en
.!
.de DEPEND
.sp
.need 20
Dependencies on Other Components in CS Parts:
.en
.!
.de SPEC
.sp 2
.need 20
.ul
Specification
.sp 2
.nf
.ec \
.fc ~
.include ~1
.fc
.ec
.fi
.en
.!
.de SPEC2
.sp 2
.need 20
.ul
Specification
.sp 2
.nf
.ec \
.fc #
.include #1
.fc
.ec
.fi
.en
--::::::::::
--id.ptf
--::::::::::
.comment
.! Identification paragraph.
.comment
.PP
The @SYSNAME (short for
.ul
Computer Science
Parts) shall also
be known as
.ul
CS Parts.
This name may be used interchangeably with
"@SYSNAME" in the documentation for
this software tool.
--::::::::::
--overview.ptf
--::::::::::
.comment
.! This is a system overview, which is common to many
.! of the DoD-STD-2167A DIDs.
.comment
.PP
.ul
CS Parts
(short for
.ul
Computer Science
Parts)
is a collection of reusable Ada software components targetted to the
.ul
general purpose
and
.ul
Computer Science and Computer Engineering education
applications domains.
These components were obtained from two sources: (1) the
Ada Software Repository on
SIMTEL20 and (2) the author of this project.
All software extracted from the Ada Software Repository is public domain
or carries an ACM-style copyright, which gives the user the right to
freely copy and use this software.
All software created by the author of this project is released to the
public domain.
.PP
The components of
.ul
CS Parts
are a mix of object-oriented and function-oriented designs. They have
been compiled on the DEC Ada and Verdix Ada compilers and can be considered
to be relatively free of bugs, but the author presents the following
disclaimer to cover his lack of liability for the use of this software.
.PP
.ul
Disclaimer.
This software and its documentation are provided "AS IS" and
without any expressed or implied warranties whatsoever. No warranties
as to performance, merchantability, or fitness for a particular
purpose exist.
The user is advised to test the software thoroughly before
relying on it. The user must assume the entire risk and liability of
using this software. In no event shall any person or organization of
people be held responsible for any direct, indirect, consequential or
inconsequential damages or lost profits.
--::::::::::
--sum.ptf
--::::::::::
.comment
.! Software User's Manual (2167A, DI-MCCR-80019A) for:
.! CS PARTS
.! Prepared by: Richard Conn
.! Date: 9 Mar 1991
.!
.! Description and Purpose:
.! 1. The Software User's Manual (SUM) provides user personnel
.! with instructions sufficient to execute one or more related
.! Computer Software Configuration Items (CSCIs).
.! 2. The SUM provides the steps for executing the software, the
.! expected output, and the measures to be taken if error messages
.! appear.
.! 3. The information required by this DID (Data Item Descriptor)
.! is directed to the functional user of the CSCI(s), as opposed
.! to the operator of the computer system. If this distinction does
.! not exist, the user will need to refer to both the Computer
.! System Operator's Manual and the SUM to operate the computer system
.! and to use the CSCI(s).
.!
.! Tailoring Instructions:
.! To tailor this template, fill in the areas surrounded by
.! [] as indicated.
.comment
.comment
.! The following reads in a set of macros used by all the 2167A
.! document templates. It also establishes the environment of the
.! document (PICA or ELITE type, for instance).
.comment
.include header.ptf
.comment
.! Set the page heading to contain the Document Control
.! Number and date. The Document Control Number contains
.! revision and volume identification as applicable.
.comment
.he //CS PARTS SUM: 9 March 1991//
.ce on
.comment
.! The next line contains the revision indicator and the
.! date of revision.
.comment
Version 2: 9 March 1991
.spaceto +15
SOFTWARE USER'S MANUAL
.sp
FOR THE
.sp
@SYSNAME
.sp
A Catalog of Reusable Ada Software Components
for
General Purpose Use
and
Computer Science and Computer Engineering Education
.spaceto -20
Prepared for:
.sp
The Ada Community
.sp 2
Prepared by:
.sp
Richard Conn
Manager, Ada Software Repository
Adjunct Professor, Department of Computer Science, UC
Adjunct Professor, Department of Electrical and Computer Engineering, UC
.ce off
.comment
.! The next page starts with the Scope and is numbered 1.
.! The table of contents is created at the end of the PTF
.! output file and should be inserted after this title page.
.comment
.bp 1
.fo //#//
.cl
.SECT 0 1. Scope
.SECT 1 1.1. Identification
.include id.ptf
.SECT 1 1.2. System overview
.include overview.ptf
.SECT 1 1.3. Document overview
.PP
This document is the
.ul
Software User's Manual
for the @SYSNAME. It contains detailed instructions
on how to use this collection of reusable Ada software components.
The parts are divided into two main categories: function-oriented
components and object-oriented components. Within these categories,
each part is presented in the order of its taxonomy entry. The following
information is given for each part: (1) its taxonomy entry, (2) the names
of the files containing it, (3) the IDs of the other CS Parts on which it
depends, and (4) a listing of its Ada specification. In addition, its Part ID
nomenclature is given at the bottom of each page on which the part is
described. An index is included which lists the Part IDs and other keywords
of interest.
.bp
.cl
.SECT 0 2. Referenced documents
.PP
The documents by Richard Conn and the Proposed MIL-HDBK-1804 are available
through the Ada Software Repository (ASR)
at White Sands Missile Range, New Mexico. Send electronic mail to
ADA-SW-REQUEST_@WSMR-SIMTEL20.ARMY.MIL.
.LIST 4
.LE ANSI/MIL-STD-1815A-1983
.ul
Reference Manual for the Ada Programming Language,
United States Department of Defense, February 17, 1983.
.LE Conn, Richard, PTF SUM.
.ul
Software User's Manual for the Portable Text Formatter (PTF),
August 24, 1989.
This SUM and the associated VDD are formatted by PTF.
.LE Conn, Richard. PTF VDD.
.ul
Version Description Document for the Portable Text Formatter (PTF),
August 24, 1989.
.LE DoD-STD-2167A
.ul
Defense System Software Development,
United States Department of Defense, February 29, 1988.
.LE Proposed MIL-HDBK-1804
.ul
Ada Style Guide,
U.S. Army Information Systems Engineering Command (ISEC),
April 30, 1988.
Most of the specifications of the components in this
parts catalog comply with MIL-HDBK-1804.
.ELIST
.bp
.cl
.SECT 0 3. CS Parts Component Descriptions
.cl
.SECT 1 3.1. Function-Oriented Components
.TAX1 Common Types
.ID TYPES
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC types.spc
.bp
.TAX1 Math Library
.TAX2 Bit Manipulation Functions on Integers 1
.ID BIT
.AUTHOR Moore, Freeman
.DEPEND
None
.SPEC bit.spc
.bp
.TAX1A Math Library
.TAX2 Bit Manipulation Functions on Integers 2
.ID LOGICAL
.AUTHOR Orost, Joseph
.DEPEND
None
.SPEC logical.spc
.bp
.TAX1A Math Library
.TAX2 Matrix Functions
.ID MATRIX
.AUTHOR Lee, Roger
.AUTHOR Adamson, Art
.DEPEND
None
.SPEC matrix.spc
.bp
.TAX1A Math Library
.TAX2 Random Number Generator
.ID RANDOM
.AUTHOR Whitaker, Bill
.AUTHOR Conn, Richard
.AUTHOR Bell, Ron
.DEPEND
None
.SPEC random.spc
.bp
.TAX1A Math Library
.TAX2 Trigonometic and Core Functions
.ID MLIB
.AUTHOR Courtwright, Terry
.DEPEND
None
.SPEC mlib.spc
.bp
.TAX1 Search
.TAX2 General-Purpose
.ID SEARCH
.AUTHOR Mendal, Geoff
.DEPEND
None
.SPEC search.spc
.bp
.TAX1 Sort
.TAX2 Quick
.ID QSORT
.AUTHOR Anderson, John
.DEPEND
None
.SPEC qsort.spc
.bp
.TAX1A Sort
.TAX2 Merge-Exchange, Quick, others
.ID SORT
.AUTHOR Mendal, Geoff
.DEPEND
None
.SPEC sort.spc
.bp
.nr z 2
.nr p 0
.cl
.SECT 1 3.2. Data-Oriented Components
.TAX1 Array
.TAX2 Dynamic
.ID DARRAY
.AUTHOR Kownacki, Ron
.DEPEND
None
.SPEC darray.spc
.bp
.TAX1 Command Line
.TAX2 Interface
.ID CLI
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC cli.spc
.bp
.TAX1A Command Line
.TAX2 Processor
.ID CLP
.AUTHOR Conn, Richard
.DEPEND
CLI
.SPEC clp.spc
.bp
.TAX1 File
.TAX2 Binary (Byte)
.ID BINFILE
.AUTHOR Conn, Richard
.DEPEND
TYPES
.SPEC binfile.spc
.bp
.TAX1A File
.TAX2 Formatted Report
.ID FOF
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC fof.spc
.bp
.TAX1A File
.TAX2 Input Text
.ID IN
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC in.spc
.bp
.TAX1A File
.TAX2 Output Text
.ID OUT
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC out.spc
.bp
.TAX1 List
.TAX2 Doubly-Linked
.ID DLIST
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC dlist.spc
.bp
.TAX1A List
.TAX2 Singly-Linked 1
.ID SLIST
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC slist.spc
.bp
.TAX1A List
.TAX2 Singly-Linked 2
.ID LISTS
.AUTHOR Altus, Buddy
.DEPEND
None
.SPEC lists.spc
.bp
.TAX1 Queue
.TAX2 Prioritized
.ID PRIQUEUE
.AUTHOR Wolfe, Bill
.DEPEND
None
.SPEC priqueue.spc
.bp
.TAX1 Set
.TAX2 Character
.ID CSET
.AUTHOR Conn, Richard
.AUTHOR Orost, Joseph
.DEPEND
None
.SPEC2 cset.spc
.bp
.TAX1A Set
.TAX2 General-Purpose
.ID SET
.AUTHOR Kownacki, Ron
.DEPEND
LISTS
.SPEC set.spc
.bp
.TAX1A Set
.TAX2 Hashed Mapping
.ID HASHMAP
.AUTHOR Kownacki, Ron
.DEPEND
HASHFCNS, LISTS
.SPEC hashmap.spc
.bp
.TAX1A Set
.TAX2 Ordered
.ID ORDSET
.AUTHOR Toscano, Bill
.AUTHOR Gordon, Michael
.DEPEND
BINTREE2
.SPEC ordset.spc
.bp
.TAX1A Set
.TAX2 Permutation
.ID PERMUTATE
.AUTHOR Bryan, Doug
.DEPEND
None
.SPEC permutate.spc
.bp
.TAX1 Stack
.TAX2 General-Purpose
.ID STACK
.AUTHOR Kownacki, Ron
.DEPEND
LISTS
.SPEC stack.spc
.bp
.TAX1 String
.TAX2 C Library Routines
.ID CSTRINGS
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC cstrings.spc
.bp
.TAX1A String
.TAX2 Case-Insensitive Comparison
.ID CISC
.AUTHOR Gordon, Michael
.DEPEND
None
.SPEC cisc.spc
.bp
.TAX1A String
.TAX2 Case-Sensitive Comparison
.ID CSSC
.AUTHOR Gordon, Michael
.DEPEND
None
.SPEC cssc.spc
.bp
.TAX1A String
.TAX2 Conversion
.ID STRINGER
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC stringer.spc
.bp
.TAX1A String
.TAX2 Dynamic
.ID DYN
.AUTHOR Rubin, Sylvan
.AUTHOR Cleaveland, R.G.
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC dyn.spc
.bp
.TAX1A String
.TAX2 General-Purpose
.ID STRING
.AUTHOR Kownacki, Ron
.DEPEND
LISTS, STACKS, CISC
.SPEC string.spc
.bp
.TAX1A String
.TAX2 Hash Function
.ID HASHFCNS
.AUTHOR Toscano, Bill
.AUTHOR Gordon, Michael
.DEPEND
None
.SPEC hashfcns.spc
.bp
.TAX1A String
.TAX2 Parser 1
.ID LPARSE
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC lparse.spc
.bp
.TAX1A String
.TAX2 Parser 2
.ID SSCAN
.AUTHOR Toscano, Bill
.AUTHOR Gordon, Michael
.DEPEND
STRING
.SPEC sscan.spc
.bp
.TAX1A String
.TAX2 Parser 3
.ID SCANNERS
.AUTHOR Toscano, Bill
.AUTHOR Gordon, Michael
.DEPEND
None
.SPEC scanners.spc
.bp
.TAX1A String
.TAX2 Time and Date Conversion
.ID TOD
.AUTHOR Mendal, Geoff
.DEPEND
SEARCH
.SPEC tod.spc
.bp
.TAX1 Terminal
.TAX2 Console
.ID CONSOLE
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC console.spc
.bp
.TAX1 Testing
.TAX2 Unit Test Case Log
.ID TESTLOG
.AUTHOR Conn, Richard
.DEPEND
None
.SPEC testlog.spc
.bp
.TAX1 Tree
.TAX2 B+
.ID BPLUSTREE
.AUTHOR Wolfe, Bill
.DEPEND
None
.SPEC bplustre.spc
.bp
.TAX1A Tree
.TAX2 Binary 1
.ID BINTREE
.AUTHOR Toscano, Bill
.AUTHOR Gordon, Michael
.DEPEND
None
.SPEC bintree.spc
.bp
.TAX1A Tree
.TAX2 Binary 2
.ID BINTREE2
.AUTHOR Toscano, Bill
.AUTHOR Gordon, Michael
.DEPEND
LISTS
.SPEC bintree2.spc
.bp
.TAX1A Tree
.TAX2 Labeled
.ID LTREES
.AUTHOR Toscano, Bill
.AUTHOR Gordon, Michael
.DEPEND
LISTS
.SPEC ltrees.spc
.bp
.TAX1A Tree
.TAX2 Labeled Binary
.ID LBINTREE
.AUTHOR Toscano, Bill
.AUTHOR Gordon, Michael
.DEPEND
BINTREE
.SPEC lbintree.spc
.bp
.cl
.SECT 0 4. Error messages
.of //#//
.ef //#//
.PP
Most of the components in this library indicate errors by raising exceptions.
These exceptions are documented with the components.
.PP
Four components, however, also display error messages. These components
are FOF, MLIB, QSORT, and VLENGTHIO (they can be quickly located by
examining the index to this SUM). Below are listed the error messages,
with an explanation when one is required, for each of these components.
.SECT 1 4.1. FOF
.index FOF
.PP
These error messages reflect internal error conditions which
should not occur in normal use. These error conditions indicate a flaw
in the logic of the associated routine. The error messages are:
.ec $
.LIST 4
.LE Internal error in FOF.Break_Line
.LE Internal error in FOF.Break_Page (1st routine)
.LE Internal error in FOF.Break_Page (2nd routine)
.LE Internal error in FOF.Output_Bottom_Of_Page
.LE Internal error in FOF.Put_Header_Footer_Line
.LE Internal error in FOF.Pnum_As_String
.LE Internal error in FOF.Put_Invisible_Word
.LE Internal error in FOF.Put_Line
.LE Internal error in FOF.Put_Word.Put_What
.LE Internal error in FOF.Put_Word
.LE Internal error in FOF.Set_Footer_Line
.LE Internal error in FOF.Set_Header_Line
.LE Internal error in FOF.Skip
.LE Internal error in FOF.Output_Top_Of_Page
.ELIST
.ec
.sp
When FOF.Close is called, an error and a warning count are output.
There are no predefined warnings, so the warning count should always be zero.
.SECT 1 4.2. MLIB
.index MLIB
.PP
The following messages are displayed by the MLIB component.
Each message is prefixed with the name of the routine issuing it.
.LIST 4
.LE SQRT: CALLED SQRT FOR NEGATIVE ARGUMENT -nn.nn USED ABSOLUTE VALUE
.LE SQRT: EXCEPTION IN SQRT, X = nn.nn RETURNED 1.0
.LE CBRT: EXCEPTION IN CBRT, X = nn.nn RETURNED nn.nn
.LE LOG: CALLED LOG FOR NEGATIVE -nn.nn USE ABS => nn.nn
.LE LOG: CALLED LOG FOR ZERO ARGUMENT, RETURNED -nn.nn
.LE LOG: EXCEPTION IN LOG, X = nn.nn RETURNED 0.0
.LE EXP: EXP CALLED WITH TOO BIG A POSITIVE ARGUMENT, nn.nn RETURNED XMAX
.LE EXP: EXP CALLED WITH TOO BIG A NEGATIVE ARGUMENT, -nn.nn RETURNED ZERO
.LE EXP: EXCEPTION IN EXP, X = nn.nn RETURNED 1.0
.LE "**": X**Y CALLED WITH X = nn.nn USED ABS, RETURNED nn.nn
.LE "**": X**Y CALLED WITH X = 0, y = nn.nn RETURNED nn.nn
.LE SIN: SIN CALLED WITH ARGUMENT TOO LARGE FOR ACCURACY nn.nn
.LE COS: COS CALLED WITH ARGUMENT TOO LARGE FOR ACCURACY nn.nn
.LE TAN: TAN CALLED WITH ARGUMENT TOO LARGE FOR ACCURACY nn.nn
.LE COT: COT CALLED WITH ARGUMENT TOO NEAR ZERO nn.nn
.LE COT: COT CALLED WITH ARGUMENT TOO LARGE FOR ACCURACY nn.nn
.LE ASIN: ASIN CALLED FOR nn.nn (>1) TRUNCATED TO 1, CONTINUED
.LE ACOS: ACOS CALLED FOR nn.nn (>1) TRUNCATED TO 1, CONTINUED
.LE ATAN2: ATAN2 CALLED WITH 0/0 RETURNED nn.nn
.LE SINH: SINH CALLED WITH TOO LARGE ARGUMENT nn.nn RETURN BIG
.LE COSH: COSH CALLED WITH TOO LARGE ARGUMENT nn.nn RETURN BIG
.ELIST
.SECT 1 4.3. QSORT
.index QSORT
.PP
QSORT returns one message, indicating an internal error.
.LIST 4
.LE QSORT: Exception Raised
.ELIST
.ec
.bp
.cl
.SECT 0 5. Notes
.include acronyms.ptf
.comment
.! This appends a blank page to the end of a main body or
.! appendix of the document. This blank page may be removed
.! if it is numbered odd or retained if it is even.
.comment
.bp
.sp 20
.ce
This page intentionally blank
.comment
.! End of blank page
.comment
.bp 1
.pn arabic Index-#
.sp 2
.ul
Insert Index Here
.cl
.cl 0 Index
.bp
.comment
.! The table of contents is automatically generated and placed
.! here in the document file. It should be physically moved to
.! after the title page after printing the document.
.comment
.bp 2
.pn lower_roman #
.ce
.ul
Table of Contents
.sp 2
.pc
.comment
.! This is provided in case the table of contents ends on an odd
.! page number.
.comment
.bp
.sp 20
.ce
This page intentionally blank
--::::::::::
--sumidx.ptf
--::::::::::
.comment
.! Software User's Manual (2167A, DI-MCCR-80019A) Index for:
.! CS PARTS
.! Prepared by: Richard Conn
.! Date: 25 July 1990
.!
.! Description and Purpose:
.! 1. The Software User's Manual (SUM) provides user personnel
.! with instructions sufficient to execute one or more related
.! Computer Software Configuration Items (CSCIs).
.! 2. The SUM provides the steps for executing the software, the
.! expected output, and the measures to be taken if error messages
.! appear.
.! 3. The information required by this DID (Data Item Descriptor)
.! is directed to the functional user of the CSCI(s), as opposed
.! to the operator of the computer system. If this distinction does
.! not exist, the user will need to refer to both the Computer
.! System Operator's Manual and the SUM to operate the computer system
.! and to use the CSCI(s).
.!
.! Tailoring Instructions:
.! To tailor this template, fill in the areas surrounded by
.! [] as indicated.
.comment
.comment
.! The following reads in a set of macros used by all the 2167A
.! document templates. It also establishes the environment of the
.! document (PICA or ELITE type, for instance).
.comment
.include header.ptf
.comment
.! Set the page heading to contain the Document Control
.! Number and date. The Document Control Number contains
.! revision and volume identification as applicable.
.comment
.he //CS PARTS SUM: 25 July 1990//
.comment
.! The next page starts with the Scope and is numbered 1.
.! The table of contents is created at the end of the PTF
.! output file and should be inserted after this title page.
.comment
.pn arabic Index-#
.fo //#//
.include ptfidx.ptf
.comment
.! This is provided in case the index ends on an odd
.! page number.
.comment
.bp
.sp 20
.ce
This page intentionally blank
--::::::::::
--vdd.ptf
--::::::::::
.comment
.! Version Description Document (2167A, DI-MCCR-80013A) for:
.! CS Parts
.! Prepared by: Richard Conn
.! Date: 9 March 1991
.!
.! Description and Purpose:
.! 1. The Version Description Document (VDD) identifies and describes
.! a version of a Computer Software Configuration Item (CSCI).
.! 2. The VDD is used by the contractor to release CSCI versions to
.! the Government. The term "version" may be applied to the initial
.! release of a CSCI, to a subsequent release of that CSCI, or to one
.! of multiple forms of the CSCI released at approximately the same
.! time (e.g., to different sites).
.! 3. The VDD is used by the Government to track and control versions
.! of software to be released to the operational environment.
.!
.! Tailoring Instructions:
.! To tailor this template, fill in the areas surrounded by
.! [] as indicated.
.comment
.comment
.! The following reads in a set of macros used by all the 2167A
.! document templates. It also establishes the environment of the
.! document (PICA or ELITE type, for instance).
.comment
.include header.ptf
.comment
.! Set the page heading to contain the Document Control
.! Number and date. The Document Control Number contains
.! revision and volume identification as applicable.
.comment
.he //CS PARTS VDD: 9 March 1991//
.ce on
.comment
.! The next line contains the revision indicator and the
.! date of revision.
.comment
Version 2: 9 March 1991
.spaceto +15
VERSION DESCRIPTION DOCUMENT
.sp
FOR THE
.sp
.comment
.! The name of the CSCI appears here
.comment
@SYSNAME
.spaceto -20
Prepared for:
.sp
The Ada Community
.sp 2
Prepared by:
.sp
Richard Conn
Manager, Ada Software Repository
Adjunct Professor, Department of Computer Science, UC
Adjunct Professor, Department of Electrical and Computer Engineering, UC
.ce off
.comment
.! The next page starts with the Scope and is numbered 1.
.! The table of contents is created at the end of the PTF
.! output file and should be inserted after this title page.
.comment
.bp 1
.fo //#//
.ec %
.cl
.SECT 0 1. Scope
.SECT 1 1.1. Identification
.PP
The @SYSNAME (short for
.ul
Computer Science
Parts) shall also be known as
.ul
CS Parts.
This name may be used interchangeably with "@SYSNAME" in the documentation
for this software tool.
.SECT 1 1.2. System overview
.include overview.ptf
.SECT 1 1.3. Documentation overview
.PP
This document identifies the files associated with the indicated version
(see title page) of @SYSNAME and contains installation instructions.
.bp
.cl
.SECT 0 2. Referenced documents
.PP
The documents by Richard Conn and the Proposed MIL-HDBK-1804 are available
through the Ada Software Repository (ASR)
at White Sands Missile Range, New Mexico. Send electronic mail to
ADA-SW-REQUEST%@WSMR-SIMTEL20.ARMY.MIL.
.LIST 4
.LE ANSI/MIL-STD-1815A-1983
.ul
Reference Manual for the Ada Programming Language,
United States Department of Defense, February 17, 1983.
.LE Conn, Richard, ASRUH.
.ul
Ada Software Repository (ASR) User's Handbook,
Version 1, March 16, 1990.
.LE Conn, Richard, PTF SUM.
.ul
Software User's Manual for the Portable Text Formatter (PTF),
August 24, 1989.
This VDD and the associated SUM are formatted by PTF.
.LE Conn, Richard. PTF VDD.
.ul
Version Description Document for the Portable Text Formatter (PTF),
August 24, 1989.
.LE DoD-STD-2167A
.ul
Defense System Software Development,
United States Department of Defense, February 29, 1988.
.LE Proposed MIL-HDBK-1804
.ul
Ada Style Guide,
U.S. Army Information Systems Engineering Command (ISEC),
April 30, 1988.
Most of the specifications of the components in this
parts catalog comply with MIL-HDBK-1804.
.ELIST
.bp
.cl
.SECT 0 3. Version description
.SECT 1 3.1. Inventory of materials released
.PP
Four files are distributed with this version of @SYSNAME:
.sp
.li +5
.nf
.ul
File Name
1. csparts.src
2. cspartb.src
3. clibody.src
4. cspartd.src
.fi
.li -5
.PP
All four files are ASCII text files which were created by the PAGER2
tool. They can be manipulated by PAGER2 or with a conventional text
editor. See the
.ul
Ada Software Repository (ASR) User's Handbook
for further information on PAGER2.
.PP
Files 1-3 are software, described under section 3.2 below. File 4
is documentation, containing PTF files which create the
.ul
Software User's Manual
and this
.ul
Version Description Document
for @SYSNAME:
.sp
.li +5
.nf
.ul
File Name Contents
acronyms.ptf List of acronyms
header.ptf Macros and PTF settings
id.ptf Common include file
overview.ptf Common include file
sum.ptf @SYSNAME Software User's Manual
sumidx.ptf Creates index for SUM
vdd.ptf @SYSNAME Version Description Document
.fi
.li -5
.PP
See the
.ul
Ada Software Repository (ASR) User's Handbook
and the PTF SUM and PTF VDD
for further information on PTF.
.SECT 1 3.2. Inventory of CSCI contents
.PP
The three source code files, csparts.src, cspartb.src,
and clibody.src, contain the Ada program unit specifications in compilation
order, the Ada program unit bodies (except for the body of package CLI)
in compilation order, and a selection of bodies for package CLI, respectively.
.PP
The files contained in csparts.src (in compilation order) are:
.sp
.li +5
.nf
.ul
Name
types.spc
console.spc
bintree.spc
bit.spc
bplustre.spc
cisc.spc
cli.spc
cset.spc
cssc.spc
cstrings.spc
darray.spc
dlist.spc
dyn.spc
fof.spc
hashfcns.spc
in.spc
lists.spc
logical.spc
lparse.spc
matrix.spc
mlib.spc
out.spc
permutat.spc
priqueue.spc
qsort.spc
random.spc
scanners.spc
search.spc
slist.spc
sort.spc
stringer.spc
testlog.spc
binfile.spc
bintree2.spc
hashmap.spc
ltrees.spc
set.spc
stack.spc
clp.spc
lbintree.spc
ordset.spc
string.spc
sscan.spc
tod.spc
.fi
.li -5
.PP
The files contained in cspartb.src (in compilation order) are:
.sp
.li +5
.nf
.ul
Name
types.bdy
console.bdy
bintree.bdy
bit.bdy
bplustre.bdy
cisc.bdy
cset.bdy
cssc.bdy
cstrings.bdy
darray.bdy
dlist.bdy
dyn.bdy
fof.bdy
hashfcns.bdy
in.bdy
lists.bdy
logical.bdy
lparse.bdy
matrix.bdy
mlib.bdy
out.bdy
permutat.bdy
priqueue.bdy
qsort.bdy
random.bdy
scanners.bdy
search.bdy
slist.bdy
sort.bdy
stringer.bdy
testlog.bdy
binfile.bdy
bintree2.bdy
hashmap.bdy
ltrees.bdy
set.bdy
stack.bdy
clp.bdy
lbintree.bdy
ordset.bdy
string.bdy
sscan.bdy
tod.bdy
.fi
.li -5
.PP
The files contained in clibody.src (only one of which should be
compiled) are:
.sp
.li +5
.nf
.ul
Name
clibody.inc
clialsys.ada
clicais.ada
cligenrl.ada
cliintgr.ada
climerdn.ada
cliverdx.ada
clivms.ada
.fi
.li -5
.SECT 1 3.3. Class I changes installed
.PP
The previous Version was Version 1, Dated 25 July 1990. The following notes
apply to Version 2 changes only.
.PP
The packages in files
ANSI100.SPC and COT.SPC were removed and replaced by the one package
in file CONSOLE.SPC (as well as the BDY files) in order to provide
one complete Console object definition.
.PP
The packages in files VLENGTHIO.SPC and DAG.SPC (as well as the BDY files)
were removed due to portability problems and lack of use.
.PP
The package in the file MATRIX.SPC (and its BDY file) was updated, adding
new subroutines only.
.SECT 1 3.4. Class II changes installed
.PP
The previous Version was Version 1, Dated 25 July 1990. The following notes
apply to Version 2 changes only.
.PP
The package in the file CSTRINGS.SPC (and its BDY file) was added.
.PP
The package in the file TESTLOG.SPC (and its BDY file) was added.
.SECT 1 3.5. Adaptation data
.PP
The file clibody.src contains the only system-dependent files.
It contains several bodies of the package CLI (whose specification is
in csparts.src) for different target platforms. See the
installation instructions (paragraph 3.9, below) and the
.ul
Ada Software Repository (ASR) User's Handbook
for details on how to select these bodies.
.SECT 1 3.6. Interface compatibility
.PP
The previous Version was Version 1, Dated 25 July 1990. The following notes
apply to Version 2 changes only.
.PP
Any programs using the packages in files ANSI100.SPC and COT.SPC may have
to be updated to use the package in the file CONSOLE.SPC.
.PP
The packages in VLENGTHIO.SPC and DAG.SPC have been removed.
.PP
All other changes are upward compatible with the previous version.
.SECT 1 3.7. Bibliography of reference documents
.PP
The documents provided with the @SYSNAME are:
.sp
.li +10
.nf
Software User's Manual for the @SYSNAME
Version Description Document for the @SYSNAME
.fi
.li -10
.PP
Both documents were written by Richard Conn and are included in the
distribution of @SYSNAME. PTF is required to assemble them
for printing.
.SECT 1 3.8. Summary of change
.PP
The previous Version was Version 1, Dated 25 July 1990. The following notes
apply to Version 2 changes only.
.PP
The following files (and their BDY files) were removed: ANSI100.SPC,
COT.SPC, DAG.SPC, and VLENGTHIO.SPC.
.PP
The following files (and their BDY files) were added: CONSOLE.SPC,
CSTRINGS.SPC, and TESTLOG.SPC.
.PP
The following files (and their BDY files) were updated: MATRIX.SPC.
.PP
All file names were shortened to eight characters with a three-character
extension.
.SECT 1 3.9. Installation instructions
.PP
Installation of @SYSNAME requires three steps:
.LIST 4
.LE Compilation of the Ada program unit specifications.
Compile the file csparts.src. Depending on your compiler, you
may have to change its file type (e.g., from SRC to ADA or A).
If this file is too big for your Ada compiler to handle, break it into
its component files and compile these component files in compilation
order (see section 3.2 above for the names of the component files and
their compilation order).
.LE Compilation of the Ada program unit bodies.
Compile the file cspartb.src. Depending on your compiler, you
may have to change its file type (e.g., from SRC to ADA or A).
If this file is too big for your Ada compiler to handle, break it into
its component files and compile these component files in compilation
order (see section 3.2 above for the names of the component files and
their compilation order).
.LE Compile the proper component file of clibody.src.
Break clibody.src into its component files and compile the body which
most closely matches your target environment. See the file clibody.inc
and the
.ul
Ada Software Repository (ASR) User's Handbook
for further instructions and examples.
.ELIST
.sp 2
.PP
The SUM and VDD of @SYSNAME can be created by issuing the following
commands (which require PTF and PTFIDX):
.sp
.li +10
.nf
PTF sum.ptf sum.doc
PTFIDX
PTF sumidx.ptf sumidx.doc
PTF vdd.ptf vdd.doc
.fi
.li -10
.PP
The files created by these commands are: (1) sum.doc, which is a
printable Software User's Manual, (2) sumidx.doc, which is the printable
index to the Software User's Manual, and (3) vdd.doc, which is a
printable Version Description Document.
.SECT 1 3.10. Possible problems and known errors
.PP
There are no known errors in this software.
.bp
.cl
.SECT 0 4. Notes
.include acronyms.ptf
.comment
.! This appends a blank page to the end of a main body or
.! appendix of the document. This blank page may be removed
.! if it is numbered odd or retained if it is even.
.comment
.bp
.sp 20
.ce
This page intentionally blank
.comment
.! End of blank page
.comment
.comment
.! The table of contents is automatically generated and placed
.! here in the document file. It should be physically moved to
.! after the title page after printing the document.
.comment
.bp 2
.pn lower_roman #
.ce
.ul
Table of Contents
.sp 2
.pc
.comment
.! This is provided in case the table of contents ends on an odd
.! page number.
.comment
.bp
.sp 20
.ce
This page intentionally blank